// JavaScript Document
 	function  onMap(){
		
		//经纬度，全局变量
	    var latLng;
		
		$('body').append('<div id="dialog"></div>');
 		$('#dialog').append('<div class="item gradient ui-corner-all"><div id="map_canvas">map can not show!</div></div>');
		
 		openDialog();
 						
		$('#map_canvas').gmap( {
			'center' : getSourceLatLng(),		//初始位置为中心
			'zoom': 7,
			//回调函数1
			'callback': function(map){
				//响应点击
				$(map).click( function(event) {
					latLng = event.latLng;
					//清除所有标记
					$('#map_canvas').gmap('clearMarkers'); 
					//添加一个标记
					$('#map_canvas').gmap('addMarker', { 
							'position': latLng,
							'title': '', 
							'draggable': true
						},
							//回调函数2
						function(map, marker) {
							//保存地址
							findLocation(marker.getPosition(), marker);
						}
					)
					//标记响应拖拉结束事件
					.dragend( function(event) {
						getLatLng(event.latLng);
						var self = this;
						//保存地址
						findLocation(event.latLng, this);
					})
					//标记响应点击事件
					.click(function(event) {
						var temp = $(this).get(0).getPosition();
						getLatLng(temp);
						findLocation(temp, this);
					});
					
					getLatLng(latLng);
				});
				
				$('#map_canvas').gmap('option', 'zoom', 7);

			}
		});
	
	}

	

	//查找地址
	function findLocation(location, marker) {
		$('#map_canvas').gmap('search', {'location': location}, function(found, results) {
			if ( found ) {
				$('#address').val(results[0].formatted_address);
			}
			else {alert("not find!");}
		});
	}
       
       //弹出对话框
       function openDialog() {             
       	$('#dialog').dialog({
       		'modal':true, 
       		'title': 'Edit and save point', 
       		'width': 800,
       		'height': 450,
       		'buttons': {
		        "关闭": function() {
		        	$(this).empty();
		        	$(this).dialog( "close" );
		        }
			}
		});
       }

	
	//获取事件对应的经纬度，保存到经度、纬度输入框
	function getLatLng(latLng) {
		$('#latitude').val(latLng.lat());
		$('#longitude').val(latLng.lng());
	}
	
	//获取初始位置
	function getSourceLatLng() {
		if (google.loader.ClientLocation != null) {
			return new google.maps.LatLng(
					google.loader.ClientLocation.latitude,
					google.loader.ClientLocation.longitude);
		}
		return new google.maps.LatLng(23.049489158954536, 113.4016574920654);
	}